The present invention is directed, in general, to communications systems and, more particularly, to a multimedia system allowing flexible communications between remote isochronous devices and multicasting of isochronous video and audio streams.
Currently, xe2x80x9cinformation superhighwayxe2x80x9d and xe2x80x9cmultimediaxe2x80x9d are probably the most often spoken and least often understood aspects of a coming revolution in data communication. Although issues specific to an information superhighway are beyond the scope of the present discussion, interactive multimedia systems are very much within the present scope.
An interactive multimedia system is broadly defined as a system capable of processing, storing, communicating and coordinating data pertaining to visual information, aural information and other information. Visual information is generally divided into still picture or graphics and full motion video or animation categories. In the vernacular of those involved in multimedia, such visual information is generically referred to as xe2x80x9cvideo.xe2x80x9d Aural information is generally divided into speech and non-speech categories and is generically referred to as xe2x80x9cvoice.xe2x80x9d xe2x80x9cOther informationxe2x80x9d is directed primarily to computer data, often organized in files and records, and perhaps constituting textual and graphical data. Such computer data are generally referred to as xe2x80x9cdata.xe2x80x9d
To date, multimedia has, for the most part, been limited to stand-alone computer systems or computer systems linked together in a local area network (xe2x80x9cLANxe2x80x9d). While such isolated systems have proven popular and entertaining, the true value of multimedia will become apparent only when multimedia-capable wide area networks (xe2x80x9cWANsxe2x80x9d) and protocol systems are developed, standardized and installed that permit truly interactive multimedia. Such multimedia systems will allow long distance communication of useful quantities of coordinated voice, video and data, providing, in effect, a multimedia extension to the voice-only services of the ubiquitous telephone network.
Defining the structure and operation of an interactive multimedia system is a critical first step in the development of such system. Accordingly, before entering into a discussion herein of more specific design issues, it is important to discuss more general questions that need to be resolved concerning design objectives of the system as a whole and some generally agreed-upon answers and specifications.
Interactive multimedia may be thought of as an electronic approximation of the paradigm of interactive group discussion. It involves the interactive exchange of voice, video and data between two or more people through an electronic medium in real time. Because of its interactive and real-time nature, there are some stringent requirements and required services not normally associated with multimedia retrieval systems. Some of the more obvious examples of those requirements and services include latency (transmission delay), conferencing, availability (xe2x80x9cup-timexe2x80x9d) and WAN interoperability.
The evolution of existing private branch exchange (xe2x80x9cPBXxe2x80x9d) and LAN topologies towards a composite interactive multimedia system based upon client/server architectures and isochronous networks is a natural trend. However, to merge the disparate mediums of voice, video and data successfully into a cohesive network requires that three fundamental integration issues be defined and resolved. The first of the fundamental integration issues is quality of service (xe2x80x9cQoSxe2x80x9d). QoS is defined as the effective communication bandwidth, services and media quality coupling of separate equipment or xe2x80x9cterminalsxe2x80x9d together and the availability (xe2x80x9cup-timexe2x80x9d) of the same. QoS parameters are divided into four groups: 1) terminal QoS, 2) network QoS, 3) system QoS, and 4) availability requirements. Thus, QoS parameters must be defined for both terminal equipment (xe2x80x9cTExe2x80x9d) and network equipment (xe2x80x9cNExe2x80x9d) governing the communication of data between the TE. System QOS is derived from a combination of terminal and network QoS. The suggested values for QoS parameters are considered to be a practical compromise between required service quality, technology and cost. See, Multimedia Communications Forum (xe2x80x9cMMCFxe2x80x9d) Working Document xe2x80x9cArchitecture and Network QoSxe2x80x9d, ARCH/QOS/94-001, Rev. 1.7, MMCF, (September 1994) and ITU-T Recommendation I.350 xe2x80x9cGeneral Aspects of Quality of Service and Network Performance in Digital Networks, including Integrated Services Digital Networks (xe2x80x9cISDNsxe2x80x9d), (1993). The following Table I summarizes some suggested parameters for terminal QoS.
Network QoS parameter requirements consist of those parts of the system that are between two TE endpoints. This includes a portion of the TE itself, the private network (if required), and the public network (if required). Some of the requirements imposed upon the network QoS are a result of the terminal QoS parameters. The following Table II summarizes the network QoS requirements.
The system QoS encompasses the terminal and network elements. The particular value critical to the system is the intramedia latency. The following Table III summarizes this value that is the sum of the terminal and network values for the same parameter.
The system QoS parameter of Intramedia Latency is the sum of twice the TE and the NE latency. Intramedia Latency parameter value is bounded by voice requirements since latent delay is more readily perceived by the ear than the eye. However, the delay itself is typically a function of video since it is the component requiring the most time for encoding and decoding.
Availability (xe2x80x9cup-timexe2x80x9d) includes several aspects. In particular, the network elements have very strict requirements. These requirements are typical of private branch exchanges (xe2x80x9cPBXsxe2x80x9d) and other private network voice equipment, but are very atypical of Legacy LANs. Most LANs are susceptible to power-losses, single points of failure, and errant TE. An interactive multimedia system must closely follow the availability requirements of the legacy voice systems. The following Table IV summarizes Availability Qos parameters.
The availability requirements are defined solely within the context of the private network. Additional availability parameters are discussed in G.821. See also, MMCF Working Document xe2x80x9cArchitecture and Network QOSxe2x80x9d, ARCH/QOS/94-001, Rev. 1.7, Multimedia Communications Forum, Inc., (September 1994) and TR-TSY-000499, Transport Systems Generic Requirements (TSGR) Common Requirements, Bellcore Technical Reference, Issue 3, (December 1989).
The second of the fundamental integration issues is network services. Network services include transport services, connection management and feature management. Multimedia communication involves the transmission of data having more varied characteristics than video, voice or data in isolation. Therefore, the manner in which the network transports and manages the flow of video, voice and data is critical to the efficiency, flexibility and overall effectiveness of the network.
Transport services can be categorized into three groups: 1) packet, 2) circuit and 3) cell. The following Table V summarizes different aspects of each of these transport services.
Interactive multimedia requires the usage of an isochronous network because of the QoS requirements for voice and video. While it is possible to construct a packet network with sufficient bandwidth, buffering and intelligence to accommodate synchronous traffic it is considered to be prohibitively expensive and unnecessary. Nevertheless, both the LAN, PBX and WAN require interoperability.
At some point it is expected that the entire private network infrastructure will employ ATM. This will transpire upon the occurrence of several events. First, WANs must adapt to support ATM Points-of-Presence (xe2x80x9cPOPsxe2x80x9d). Second, the telephone must disappear from the premise (replaced by an ATM audio device). Third, packet-based LAN TE must become ATM TE. Fourth, phantom power must be supported to the ATM TE (for availability purposes). Fifth, an 8 kHz synchronous clock must be supported and managed by all ATM equipment. Finally, the price of ATM TE and NE must approach that of Ethernet(copyright), ISDN and isoEthernet(copyright) equipment.
Regardless of the interim private network infrastructure, ATM is the only backbone solution for the private network. It is the only scalable switching architecture that can transport packet and isochronous data. Furthermore, because it is deployed as a backbone, the aforementioned issues do not apply.
Connection management is the process employed by the private and public network routing functions. Because packet routing is a well established and defined process, it is not discussed further. Connection management within the confines of an isochronous network for interactive multimedia is a newer technology (albeit with old roots) and deserves discussion.
Signalling for circuit and cell switching is best defined by the ISDN signalling standards (see, TR-NWT-000938, Network Transmission Interface and Performance Specification Supporting Integrated Digital Services Network. (ISDN), Bellcore Technical Reference, Issue 1, (August 1990)), isoEthernet(copyright) signalling (see, IEEE Proposed Standard 802.9a, xe2x80x9cIsochronous services with Carrier Sense Multiple Access with Collision Detection (CSMA/CD) Media Access Control (MAC) servicexe2x80x9d, (December 1994)) and ATM signalling (see, ATM Forum, xe2x80x9cATM User-Network Interface Specificationxe2x80x94Version 3.0xe2x80x9d, (September 1993) and ITU-T Recommendation Q.293x, xe2x80x9cGeneric Concepts for the Support of Multipoint and Multiconnection Callsxe2x80x9d; (1993)). Historically, isochronous networks carry the signalling channel as an isochronous channel. Nevertheless, the signalling function can be shown to be better suited to a packet channel. A hub/routing function is the ideal location to perform the bridging between an isochronous signalling channel and a packet signalling channel. The natural packet protocol choice for a signalling channel is an Internet Protocol (xe2x80x9cIETF IPxe2x80x9d). Available on most LAN networks, as well as global routing capability, IP greatly enhances the signalling requirement of interactive multimedia.
Feature management consists of the management of those features provided by the private and public network for interactivity purposes. The PBX is followed as a model for interactive multimedia features. The following Table VI summarizes some of the more common features.
The third of the fundamental integration issues is interoperability. An interactive multimedia system by nature implies interoperability, because a multimedia network as envisioned is too large and far-flung to employ the equipment of only a single supplier. Therefore, standards must be established that allow equipment from different suppliers. to interact smoothly. To this end, interoperability must extend to transport mechanisms, signalling and compression standards.
There are certain existing communication technologies that must be supported and others that are used. A truly interoperable interactive multimedia system should guarantee that the physical and logical interfaces of each component adheres to a standard. Prior to 1992, this would have been almost impossible. The present day affords the opportunity to evolve the proprietary telephony of the PBX and the proprietary video of the video conferencing systems into standards-based systems in the same manner that the data systems evolved from proprietary mainframes to the standards-based LAN systems of today. The following Table VII summarizes the required standards of interoperability.
In addition to the standards required for communications, there are other specifications relating to application programming interfaces for terminal and server control. These include Microsoft(copyright) Telephony Application Programming Interface (xe2x80x9cTAPI(copyright)xe2x80x9d), Novell(copyright) Telephony Service Application Programming Interface (xe2x80x9cTSAPI(copyright)xe2x80x9d) and Microsoft(copyright) Open DataBase Connectivity (xe2x80x9cODBC(copyright)xe2x80x9d).
Having now set the stage with a discussion of general issues concerning multimedia systems, more specific design issues may now be discussed. The specific design issue of concern is functionality at the desktop to implement an interactive multimedia system.
The evolution of work at the desktop has been an on-going process since the inception of personal computers (xe2x80x9cPCsxe2x80x9d) in the 1980s. Today, multimedia PCs integrate voice, video and data at the desktop. When multimedia PCs are coupled together over a LAN, remote stations can communicate with one another. These capabilities reveal a momentous advance from the stand-alone PC-based word processors of the past.
The communication capabilities of multimedia PCs include in the simplest form, a file transfer with accompanying message to a remote locale on the LAN. A more sophisticated example encompasses a video conferencing session between two stations on the LAN. The real-time cooperation of voice and video over a LAN, such as a LAN using an Ethernet(copyright) packet-based network, is not a trivial task. However, technological advances include full integration of voice, video and data over a computer-based network.
As a global isochronous network becomes more of a reality, desktop functionality takes on a new meaning. A global isochronous network is envisioned to network all types of different communication devices each potentially incorporating different communication technologies. The global network may include a multimedia PC with integral telephone and video equipment over a LAN attempting to communicate to a telephone directed through a central switch to the public telephone network. While ISDN currently provides for user-to-user signalling between isochronous devices, such signalling has been strictly limited to sending text messages between the devices, as no procedures exist for actually allowing one device to control another remotely. Presently, therefore, a client isochronous device within a LAN has no procedure available for controlling another isochronous client""s behavior in another network configuration.
True functionality at the desktop includes a multitude of tasks including, but not limited to, a cooperative procedure to exchange capabilities between devices in order to export control from a controlled client to a controlling client, and a design that abstracts an isochronous data stream (from a B channel isoEthernet(copyright) interface) to a logical block device and file that may be accessed by a desktop application. Truly interactive multimedia is without impact until the functionality necessary to implement global communication reaches the desktop.
Accordingly, what is needed in the art is a desktop interactive multimedia computer that affords a user control over remote isochronous devices to receive audio, and particularly video, from remote sources over isochronous data channels.
To address the above-discussed deficiencies of the prior art, it is a primary object of the present invention to provide multimedia services to an interactive multimedia computer system.
In the attainment of the above-described primary object, one aspect of the present invention provides a system for allowing remote control of an isochronous device, comprising: (1) first and second isochronous devices, (2) a packet-based signalling channel coupling the first and second isochronous devices and allowing communication of signalling messages between the first and second isochronous devices, the first isochronous device capable of initiating a request to the second isochronous device to transfer multimedia information from the second isochronous device to the first isochronous device and (3) an isochronous user information path established by the second isochronous device in response to initiation of the request, the isochronous user information path coupling the first and second isochronous devices for transfer of the multimedia information, the first isochronous device thereby effecting remote control of the second isochronous device.
Thus, the present invention allows one isochronous device to control another in a remote location. The two devices are thus able to establish the isochronous user information path therebetween to share data. The isochronous nature of the user information path guarantees channel characteristics that are not always possible with channels over packet networks, thereby advantageously allowing, for instance, communication of 30 fps video between the devices.
In a preferred embodiment of this aspect of the present invention, the second isochronous device transmits a capabilities message to the first isochronous device prior to initiation of the request, the capabilities message communicating a media capability of the second isochronous device. Therefore, the first device can learn of the capabilities or configuration of the second device, allowing the first device to determine whether it should request transmission of data over the isochronous channel from the second device.
In a preferred embodiment of this aspect of the present invention, the signalling channel is established over a public network. As herein described, the present invention can make advantageous use of the data handling capability of the public network to provide signalling transport, allowing partitioning of a private network into remote sites.
In a preferred embodiment of this aspect of the present invention, the signalling messages are transmitted in packets between first and second private network partitions associated with the first and second isochronous devices, respectively, the packets including information uniquely identifying the first and second isochronous devices. As further herein described, the multimedia network within which the isochronous devices of the present invention preferably operates is capable of encapsulating the signalling messages for transmission over a packet network linking the first and second private network partitions.
In a preferred embodiment of this aspect of the present invention, the multimedia information is selected from the group consisting of: (1) video and (2) audio.
In a preferred embodiment. of this aspect of the present invention, the first and second isochronous devices are adapted to communicate data selected from the group consisting of: (1) voice, (2) video and (3) data.
In a preferred embodiment of this aspect of the present invention, the first isochronous device is an interactive multimedia desktop computer.
In a preferred embodiment of this aspect of the present invention, the second isochronous device is selected from the group consisting of: (1) an interactive multimedia desktop computer, (2) a BRI set and (3) a POTS. Thus, the first device can control a number of remote isochronous devices to establish communication therewith over the isochronous user information path.
In a preferred embodiment of this aspect of the present invention, the multimedia information is selected from the group consisting of: (1) MPEG encoded audio and/or video and (2) H.320 encoded audio and/or video.
In a preferred embodiment of this aspect of the present invention, the first and second isochronous devices comprise Integrated Services Terminal Equipment (xe2x80x9cISTExe2x80x9d). Those of ordinary skill in the art are familiar with the definition and capabilities of ISTE. Such ISTE functions as subordinate devices in a communications network and may comprise desktop computers having interactive multimedia capability.
In the attainment of the above-described primary object, another aspect of the present invention provides, in a computer having an operating system, a video file viewing application executing within the operating system and circuitry coupling the computer to an isochronous user information path, a system for adapting a data stream received into the circuitry from the isochronous user information path for use by the video file viewing application. The system comprises: (1) a buffer, under control of a buffer input manager, the buffer capable of receiving and storing portions of the data stream from the isochronous information path via the buffer input manager and (2) a file emulator capable of extracting the portions of the data stream from the buffer and presenting the portions as though having been retrieved from a file compatible with the operating system, the file emulator thereby enabling the video file viewing application to retrieve the portions from the file emulator and display the portions on an output device associated with the computer.
Thus, the present invention introduces a way in which a data stream flowing over an isochronous channel can be seized, buffered and provided to a conventional video file viewing application, such as an MPEG viewer, as though the data stream was being retrieved from a storage unit, such as a hard disk drive. Because the isochronous channel can be made to appear as a data file, the file viewing application can remain conventional. The present invention therefore allows multicasting of video and/or audio data over the isochronous channel to a number of recipient computers.
In a preferred embodiment of this aspect of the present invention, the data stream is a real time data stream selected from the group consisting of: (1) audio data and (2) video data.
In a preferred embodiment of this aspect of the present invention, the isochronous user information path is carried on one or more ISDN B channels or isoEthernet(copyright) C channels. Those of ordinary skill in the art will understand that the present invention is equally applicable in the environment of isoEthernet(copyright), wherein C channels are employed as bearer channels. Both ISDN B and isoEthernet(copyright) C channels are 64 kbps (non-restricted) or 56 kbps (restricted) channels.
In a preferred embodiment of this aspect of the present invention, the circuitry coupling the computer system to the isochronous user information path comprises an isochronous ISDN B channel driver. Such drivers are known in the art, but as yet unemployed in the conversion of B channel data streams into virtual files.
In a preferred embodiment of this aspect of the present invention, the system further comprises an ISDN B channel driver interface coupling the circuitry and the buffer input manager. The B channel driver interface prepares the B channel data for transmission to the buffer input manager.
In a preferred embodiment of this aspect of the present invention, the buffer is a ring buffer. Those of ordinary skill in the art are familiar with ring buffers, their construction and use. The present invention preferably maintains a ring buffer to compensate for minor temporary variations in data insertion and extraction rates.
In a preferred embodiment of this aspect of the present invention, the file emulator comprises a virtual device driver. Those of ordinary skill in the art are familiar with the concept of virtual device drivers, as such are widely used. However, the present invention employs a virtual device driver that emulates a file accessible by the operating system.
In a preferred embodiment of this aspect of the present invention, the system further comprises a logical device enabling the video file viewing application to retrieve the portions from the file emulator. Those of ordinary skill in the art are also familiar with logical devices and their interaction with operating systems. The present invention employs the logical device as a virtual storage unit or drive, providing an interface between the operating system and the file-emulating virtual device driver.
In a preferred embodiment of this aspect of the present invention, the operating system is selected from the group consisting of: (1) Microsoft(copyright) Windows(copyright) overlaying Microsoft(copyright) MS-DOS and (2) Microsoft(copyright) Windows(copyright) NT. Those of ordinary skill in the art are aware, however, that the present invention is also applicable in environments outside of IBM-compatible PCs, such as Apple Macintoshes, wherein System 7 is a representative operating system.
In a preferred embodiment of this aspect of the present invention, the computer is a PC. Again, the computer may be any data processing and storage device having display capability, as the present invention may be modified to operate in any environment.
The foregoing has outlined rather broadly the features and technical advantages of the present invention so that those skilled in the art may better understand the detailed description of the invention that follows. Additional features and advantages of the invention will be described hereinafter that form the subject of the claims of the invention. Those skilled in the art should appreciate that they can readily use the disclosed conception and specific embodiment as a basis for designing or modifying other structures for carrying out the same purposes of the present invention. Those skilled in the art should also realize that such equivalent constructions do not depart from the spirit and scope of the invention in its broadest form.